#pragma once
#include <set>
#include <memory>

#include <osg/Vec3d>

#include "Op.h"

class OpReversePrivate;
class Ent3DFace;
class OpReverse : public Op
{
public:
	OpReverse(const std::set<std::shared_ptr<Ent3DFace>>& faces, QUndoCommand *outer = nullptr);
	~OpReverse();

	virtual void redo() override;
	virtual void undo() override;

protected:
	OpReversePrivate* d_ptr;
};